package com.gitee.qdbp.general.system.api.permission.model;

import com.gitee.qdbp.base.annotation.DataIsolation;
import com.gitee.qdbp.base.annotation.OperateTraces;

/**
 * 角色资源关系更新类
 *
 * @author zhh
 * @version 180514
 */
@OperateTraces(target = "where")
@DataIsolation(enable = false)
public class RoleResourceRefUpdate extends RoleResourceRefBean {

    /** 版本序列号 **/
    private static final long serialVersionUID = 1L;

    /** 使用场景是否更新为空值 **/
    private Boolean sceneTypeToNull;

    /** 角色ID是否更新为空值 **/
    private Boolean roleIdToNull;

    /** 资源ID是否更新为空值 **/
    private Boolean resourceIdToNull;

    /** 更新操作的条件 **/
    private RoleResourceRefWhere where;

    /** 判断使用场景是否更新为空值 **/
    public Boolean isSceneTypeToNull() {
        return sceneTypeToNull;
    }

    /**
     * 设置使用场景是否更新为空值
     *
     * @param sceneTypeToNull 使用场景是否更新为空值
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setSceneTypeToNull(Boolean sceneTypeToNull) {
        this.sceneTypeToNull = sceneTypeToNull;
    }

    /** 判断角色ID是否更新为空值 **/
    public Boolean isRoleIdToNull() {
        return roleIdToNull;
    }

    /**
     * 设置角色ID是否更新为空值
     *
     * @param roleIdToNull 角色ID是否更新为空值
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setRoleIdToNull(Boolean roleIdToNull) {
        this.roleIdToNull = roleIdToNull;
    }

    /** 判断资源ID是否更新为空值 **/
    public Boolean isResourceIdToNull() {
        return resourceIdToNull;
    }

    /**
     * 设置资源ID是否更新为空值
     *
     * @param resourceIdToNull 资源ID是否更新为空值
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setResourceIdToNull(Boolean resourceIdToNull) {
        this.resourceIdToNull = resourceIdToNull;
    }

    /** 获取更新操作的条件 **/
    public RoleResourceRefWhere getWhere() {
        return where;
    }

    /** 获取更新操作的条件, force=是否强制返回非空条件 **/
    public RoleResourceRefWhere getWhere(boolean force) {
        if (where == null && force) {
            where = new RoleResourceRefWhere();
        }
        return where;
    }

    /** 设置更新操作的条件 **/
    public void setWhere(RoleResourceRefWhere where) {
        this.where = where;
    }
}